#ifndef CONTACTSIGNAL_H
#define CONTACTSIGNAL_H

#include <QObject>
#include <QString>

class ContactSignal : public QObject
{
    Q_OBJECT
public:
    explicit ContactSignal(QObject *parent = nullptr);
    ///
    /// \brief 发射isOnFloor信号，当人物与地面发生碰撞时产生
    /// \param name 刚体（b2Body）的名字
    ///
    void emitIsOnFloor(QString name);
    ///
    /// \brief 发射attacked信号，当一个人物被另一个人物普通攻击击中时产生
    /// \param name 被击中的刚体的名字
    ///
    void emitAttacked(QString name);
    ///
    /// \brief 发射combinationAttacked信号，当一个人物被另一个人物组合技击中时产生
    /// \param name 被击中的刚体的名字
    ///
    void emitCombinationAttacked(QString name);

signals:
    void isOnFloor(QString name);
    void attacked(QString name);
    void combinationAttacked(QString name);
};

#endif // CONTACTSIGNAL_H
